{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "b2f78307",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "from datetime import datetime\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "import matplotlib.dates as mdates\n",
    "plt.rcParams['font.sans-serif']=['SimHei']\n",
    "plt.rcParams['axes.unicode_minus']=False"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "b5b1644a",
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>项目名称</th>\n",
       "      <th>开始日期</th>\n",
       "      <th>项目天数</th>\n",
       "      <th>完成度</th>\n",
       "      <th>进行天数</th>\n",
       "      <th>结束日期</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>制定计划</td>\n",
       "      <td>2022-03-01</td>\n",
       "      <td>11</td>\n",
       "      <td>0.51</td>\n",
       "      <td>5.61</td>\n",
       "      <td>2022-03-12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>方案设计</td>\n",
       "      <td>2022-03-13</td>\n",
       "      <td>8</td>\n",
       "      <td>0.32</td>\n",
       "      <td>2.56</td>\n",
       "      <td>2022-03-21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>资源调配</td>\n",
       "      <td>2022-03-22</td>\n",
       "      <td>10</td>\n",
       "      <td>0.21</td>\n",
       "      <td>2.10</td>\n",
       "      <td>2022-04-01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>第一阶段</td>\n",
       "      <td>2022-04-02</td>\n",
       "      <td>13</td>\n",
       "      <td>0.85</td>\n",
       "      <td>11.05</td>\n",
       "      <td>2022-04-15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>第二阶段</td>\n",
       "      <td>2022-04-16</td>\n",
       "      <td>24</td>\n",
       "      <td>0.36</td>\n",
       "      <td>8.64</td>\n",
       "      <td>2022-05-10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>第三阶段</td>\n",
       "      <td>2022-05-11</td>\n",
       "      <td>14</td>\n",
       "      <td>0.68</td>\n",
       "      <td>9.52</td>\n",
       "      <td>2022-05-25</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>项目总结</td>\n",
       "      <td>2022-05-26</td>\n",
       "      <td>7</td>\n",
       "      <td>0.68</td>\n",
       "      <td>4.76</td>\n",
       "      <td>2022-06-02</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   项目名称       开始日期  项目天数   完成度   进行天数       结束日期\n",
       "0  制定计划 2022-03-01    11  0.51   5.61 2022-03-12\n",
       "1  方案设计 2022-03-13     8  0.32   2.56 2022-03-21\n",
       "2  资源调配 2022-03-22    10  0.21   2.10 2022-04-01\n",
       "3  第一阶段 2022-04-02    13  0.85  11.05 2022-04-15\n",
       "4  第二阶段 2022-04-16    24  0.36   8.64 2022-05-10\n",
       "5  第三阶段 2022-05-11    14  0.68   9.52 2022-05-25\n",
       "6  项目总结 2022-05-26     7  0.68   4.76 2022-06-02"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data=pd.read_excel('第二章 图表(前15).xlsx',sheet_name='10 甘特图',usecols=\"B:G\",skiprows=2)\n",
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "3393ba89",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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7bfftGDBAi1ZskS//fab3nzzTXl7e0uSfvzxR2VkZKh79+769ddfFRYWpoyMDG3YsEGzZ8/W0aNHlZiYqMOHD6tatWry8vL6+79EAFe84sICzX6+r2o3itbTc9cq+eBebVu54KJ9Du3YrLUzxuve/0zXS59vU1F+nr6cPNaxP/XoYX3yXB/lZpxx6rfls0/UY9Qk/bx0jiRp17rPdc3Nt5f3LQEAAAAAXMRlQV5ISIg++ugjzZ07V0FBQXrsscf02WefaePGjTKbzdq6datmzJihFi1a6NZbb5UkBQYGauXKlXr22WdlMBiczjd16lT5+vpe8HoTJkzQVVddJUkymUySJJvNpoULF+rLL790vBr7x/OW1blzAsD5Dsf+orysDHUf/IqqhtZVt6dHauuKeRftc+pwvO4c8YYiWnVQYPVauu6O+3X0952O/Z8820ct7+pbol9u+hnVvDpKklSQmy2T2Syzh2e53g8AAAAAwHVcOkee3W7X/PnztXv3bu3cuVOdO3fW3LlzlZaWpo8//ljdu3fXL7/8Ikk6cuSIZs2apVq1aslqtTqCt9dee00BAQHy9PRUjx49FB4eLoPB4HiNtrCwUHa7XdWrV9eYMWMkSUbj2dtu1KiR3n//fb355puOsPCciRMnKiQkRN9++626deumkydPKjQ0VL169brgvQDAH6UcTlBok+vkafGRJNVoEKXkA/su2qflXX2dRtKlHI5X1dC6ju1+U+apSZc7SvTz8vVTVmqK7Ha7Yr9epuhuPcrpLgAAAAAAVwKXBXn5+fnq37+/fv/9d0VHRys1NVXjx4/XrFmztHPnTq1Zs0a33367lixZov3796u4uFjbt29XZGSkDh48qOLiYhmNRvn6+qp9+/aaNm2a4yNJFotFkjR06FCFh4fLYrHoq6++kvS/UXd79+7Vk08+qZEjR+rrr792qs/Dw0NPPvmk2rRpo++//14NGzbUm2++KU/P0ke3XGyxi/z8fGVkZDh9AFQOBbk5qlIrzLFtMBhkNJpKvBZ7IdlnUrXls9lq3au/o61KnfBSj23S9S699+gdimzbWWnHkhR83nUBAAAAAO7PZUHeY489ppSUFK1YsUJLly5V69atlZWVpc2bNys0NFRff/217r//fr333nu66aabZLFYNH36dG3ZskV169ZVbm6uYz67vLw8x1x5KSkpTteZ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ckhJSWHKlCmUlpYyatQoTx+WiHwL5VbEfJRbEfNRbkXMSdkVb2BxuVwuTx+EeEZBQQEffPABP/3pT/H19fX04YhIAyi3Iuaj3IqYj3IrYk7KrngDFfJERERERERERERMQI/WioiIiIiIiIiImIAKeSIiIiIiIiIiIiagQp6IiIiIiIiIiIgJqJAnIiIiIiIiIiJiAirkiYiIiIiIiIiImIAKeSIiIiIiIiIiIiagQp6IiIiIuFVmZiYWiwW73X7dH6vVyo9//GOj/YkTJ7DZbMbv06dP55lnngGga9euREVFERcXR1hYGA888ECT90dERETkTqFCnoiIiIi4ld1uJyIiAofDcd2fxx9/HLvdDkB1dTWXL1+mZcuWxvt9fX2x2WxUVFTQsmVLVq5cSUFBAc8//3y9diIiIiLexu7pAxARERGR5uXq2XU3UlfI+/zzz3n00Ue5dOkScXFxAJw6dQqr1Up4ePg1n9WQzxYRERFprjQjT0RERETcymKx3LRNXUGuZ8+e7Nu3Dz8/PwoKCigoKOCHP/whs2fPZvbs2Q36LBERERFvoRl5IiIiIuJWDSm+fbNNVVVVvRl5Tz/9tNEuOTmZVq1aUVZWRu/evd1+vCIiIiJmoUKeiIiIiLiVxWLhxIkThISEXPf1yspKZsyYUe9vdTPyAObMmWP83el0snLlSkaNGsUbb7zBhg0bGu/ARURERO5wKuSJiIiIiFtZLBbCw8MpKiq67us/+tGPrvnbjWbkVVdXN9ZhioiIiJiOCnkiIiIi4lYul6vBbaqrq3E4HNfMyHO5XDgcDsrLy5k5cyatWrXi66+/Jj4+vlGPXUREROROpkKeiIiIiLjVrRTyMjIyeOONN+jataux/p3L5aK6uppWrVrx1VdfsWfPHjp37qxHa0VERMTraddaEREREXGrmpqam7ZxOp0ApKamkp2dTWxsLDt27GDbtm0MGDCA3NxcoqOjCQkJITw8vLEPWURERMQUNCNPRERERNzK6XTedLOLadOmGb/PnDmT4OBggoODcblclJaWkpycTHFxMRMnTmzQLrgiIiIi3kAz8kRERETErZxOJ+Hh4Zw9e/a6P5MmTcLhcACwceNGTp8+zbJly4DajTJef/11/P39OXjwIM8++ywAe/bsYeXKlQQHB3usXyIiIiKeZnE1ZBETEREREZFG4nA4sNvrPyhy/PhxDh06xHe/+12gdifbl19+mTlz5tCxY0dPHKaIiIiIx6mQJyIiIiIiIiIiYgJ6tFZERERERERERMQEVMgTERERERERERExARXyRERERERERERETECFPBERERERERERERNQIU9ERERERERERMQEVMgTERERERERERExARXyRERERERERERETECFPBERERERERERERP4PxyAkFyvbvGnAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 1500x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(15, 6))\n",
    "\n",
    "for item in data.values:\n",
    "    plt.barh(item[0], item[5] - item[1], left=item[1], color='skyblue', edgecolor='black')\n",
    "    plt.text(item[1] + (item[5] - item[1]) * item[3] / 100, item[0], f'{item[3]}%', va='center')\n",
    "\n",
    "plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y/%m/%d'))\n",
    "plt.gcf().autofmt_xdate()\n",
    "\n",
    "plt.xlabel('日期')\n",
    "plt.ylabel('项目名称')\n",
    "plt.title('项目甘特图')\n",
    "plt.grid(axis='x')\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "1ea9e8ae",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
